<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>SystemSharp: SignalsND.cs Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">SystemSharp
   &#160;<span id="projectnumber">0.3</span>
   </div>
   <div id="projectbrief">A system-level modeling framework for designing real-time embedded systems</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Packages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_signals_n_d_8cs_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Properties</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Events</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">SignalsND.cs</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_signals_n_d_8cs.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">using</span> System;</div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="keyword">using</span> System.Collections.Generic;</div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">using</span> System.Linq;</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">using</span> System.Text;</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="keyword">using</span> SystemSharp.Collections;</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">using</span> SystemSharp.Meta;</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">using</span> SystemSharp.DataTypes;</div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">using</span> SystemSharp.SysDOM;</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span>SystemSharp.Components</div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;{</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html">   37</a></span>&#160;    <span class="keyword">class </span>Signal1DProxy&lt;T&gt; :</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        XInOut&lt;T[], InOut&lt;T&gt;&gt;,</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <a class="code" href="interface_system_sharp_1_1_components_1_1_i_signal.html">ISignal</a></div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    {</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keyword">private</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html">Signal1D&lt;T&gt;</a> _ref;</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">private</span> <a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> _range;</div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keyword">private</span> <a class="code" href="class_system_sharp_1_1_components_1_1_multi_event.html">MultiEvent</a> _changedEvent;</div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keyword">private</span> IEnumerable&lt;AbstractEvent&gt; GetRefEvents()</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        {</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;            <span class="keywordflow">foreach</span> (<span class="keywordtype">int</span> i <span class="keywordflow">in</span> _range.Values)</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                yield <span class="keywordflow">return</span> _ref[i].ChangedEvent;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        }</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a9d0fd7c78d5546800ca77a23ba1560ce">   56</a></span>&#160;        <span class="keyword">public</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a9d0fd7c78d5546800ca77a23ba1560ce">Signal1DProxy</a>(<a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html">Signal1D&lt;T&gt;</a> reference, <a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> range)</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        {</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;            _ref = reference;</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;            _range = range;</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;            _changedEvent = <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_components_1_1_multi_event.html">MultiEvent</a>(reference, GetRefEvents());</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        }</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        <span class="keyword">public</span> T[] Cur</div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#adc935230f8b581ff7ccac371d9d09662">   64</a></span>&#160;        {</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.Cur)]</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _ref.Cur.Slice(_range); }</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        }</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <span class="keyword">public</span> T[] Pre</div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a880c629816a44092fc23eed9526771ea">   70</a></span>&#160;        {</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.Pre)]</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _ref.Pre.Slice(_range); }</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        }</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <span class="keyword">public</span> Out&lt;T[]&gt; Dual</div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a07a993dc041c1bd3883cb3c99571fe51">   76</a></span>&#160;        {</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        }</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        </div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <span class="keyword">public</span> <a class="code" href="class_system_sharp_1_1_components_1_1_abstract_event.html">AbstractEvent</a> ChangedEvent</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a74b55ee57195a27eb45658f90952248b">   81</a></span>&#160;        {</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.ChangedEvent)]</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _changedEvent; }</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        }</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <span class="keyword">public</span> <a class="code" href="interface_system_sharp_1_1_components_1_1_in_out_3_01_t_01_4.html">InOut&lt;T&gt;</a> <span class="keyword">this</span>[<span class="keywordtype">int</span> index]</div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#ab109937d6a05f701e8810cedc1dd6bab">   87</a></span>&#160;        {</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SignalIndexer</a>]</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _ref[_range.Unproject(index)]; }</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        }</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keyword">public</span> XInOut&lt;T[], InOut&lt;T&gt;&gt; <span class="keyword">this</span>[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index]</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#aa3b7fe94920b8b175c5d02edb9b836a4">   93</a></span>&#160;        {</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SignalIndexer</a>]</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html">Signal1DProxy&lt;T&gt;</a>(_ref, _range.Unproject(index)); }</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        }</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="keyword">public</span> T[] Next</div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a4de960a675e05bde657941d73ba3ed62">   99</a></span>&#160;        {</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.Next)]</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;            set </div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;            { </div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                <span class="keywordflow">foreach</span> (<span class="keywordtype">int</span> i <span class="keywordflow">in</span> _range.Values)</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                    _ref[i].Next = value[_range.Project(i)];</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;            }</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        }</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        In&lt;T[]&gt; Out&lt;T[]&gt;.Dual</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        {</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        }</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        XIn&lt;T[], InOut&lt;T&gt;&gt; IIndexed&lt;InOut&lt;T&gt;, XIn&lt;T[], InOut&lt;T&gt;&gt;&gt;.this[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index]</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        {</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;            [SignalIndexer]</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>[index]; }</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        }</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        XOut&lt;T[], InOut&lt;T&gt;&gt; IIndexed&lt;InOut&lt;T&gt;, XOut&lt;T[], InOut&lt;T&gt;&gt;&gt;.this[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index]</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        {</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;            [SignalIndexer]</div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>[index]; }</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        }</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keyword">public</span> <span class="keywordtype">object</span> InitialValueObject</div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#aa5e61557210f1da9d891535c7814fc3c">  127</a></span>&#160;        {</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _ref.InitialValue.Slice(_range); }</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        }</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        <span class="keyword">public</span> <span class="keywordtype">object</span> PreObject</div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a721d0547f5d55c961522e745deecd981">  132</a></span>&#160;        {</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> Pre; }</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        }</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keyword">public</span> <span class="keywordtype">object</span> CurObject</div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a50d6d9ed2fdc25a0df9c4f516e2f5d58">  137</a></span>&#160;        {</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> Cur; }</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        }</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        <span class="keyword">public</span> <span class="keywordtype">object</span> NextObject</div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#acc3cc3bad806e8bab062a1f81326bd39">  142</a></span>&#160;        {</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;            set { Next = (T[])value; }</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        }</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        <span class="keyword">public</span> <a class="code" href="class_system_sharp_1_1_meta_1_1_type_descriptor.html">TypeDescriptor</a> ElementType</div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#afe272d2f8eafcc5730353b447e17732c">  147</a></span>&#160;        {</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> TypeDescriptor.GetTypeOf(InitialValueObject); }</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        }</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#aab4bdd7c6bbd7f9512c8b87f038e7583">  151</a></span>&#160;        <span class="keyword">public</span> <a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#aab4bdd7c6bbd7f9512c8b87f038e7583">ToSignalRef</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a> prop)</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        {</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;            var index = <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_data_types_1_1_index_spec.html">IndexSpec</a>((<a class="code" href="class_system_sharp_1_1_data_types_1_1_dim_spec.html">DimSpec</a>)_range);</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>(_ref.Descriptor, prop,</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                index.AsExpressions(), index, <span class="keyword">true</span>);</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        }</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    }</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div>
<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html">  164</a></span>&#160;    <span class="keyword">public</span> <span class="keyword">class </span>Signal1D&lt;T&gt; :</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        <a class="code" href="class_system_sharp_1_1_components_1_1_signal_base.html">SignalBase</a>,</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        <a class="code" href="interface_system_sharp_1_1_meta_1_1_i_containment_implementor.html">IContainmentImplementor</a>,</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        XInOut&lt;T[], InOut&lt;T&gt;&gt;</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    {</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        <span class="keyword">public</span> delegate <a class="code" href="class_system_sharp_1_1_components_1_1_signal_3_01_t_01_4.html">Signal&lt;T&gt;</a> CreateFunc(<span class="keywordtype">int</span> index);</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        <span class="keyword">private</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal_3_01_t_01_4.html">Signal&lt;T&gt;</a>[] _signals;</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div>
<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a299f33f37144b2f67604ede3dae9324f">  182</a></span>&#160;        <span class="keyword">public</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a299f33f37144b2f67604ede3dae9324f">Signal1D</a>(IEnumerable&lt;<a class="code" href="class_system_sharp_1_1_components_1_1_signal_3_01_t_01_4.html">Signal&lt;T&gt;</a>&gt; signals)</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        {</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;            _signals = signals.ToArray();</div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;            Initialize();</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        }</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a3c6c66ec950b58f0ed52fe51d4b29de5">  193</a></span>&#160;        <span class="keyword">public</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a3c6c66ec950b58f0ed52fe51d4b29de5">Signal1D</a>(<span class="keywordtype">int</span> dim, CreateFunc creator)</div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        {</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;            _signals = <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal_3_01_t_01_4.html">Signal&lt;T&gt;</a>[dim];</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; dim; i++)</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;            {</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                _signals[i] = creator(i);</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;            }</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;            Initialize();</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        }</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="keyword">private</span> <span class="keywordtype">void</span> Initialize()</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        {</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;            <span class="keywordflow">if</span> (!_signals.All(s =&gt; s.ElementType.Equals(_signals[0].ElementType)))</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                <span class="keywordflow">throw</span> <span class="keyword">new</span> ArgumentException(<span class="stringliteral">&quot;Signals inside this container must all have the same types and dimensions&quot;</span>);</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;            _elementType = TypeDescriptor.MakeType(</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                _signals.Select(sig =&gt; sig.InitialValue).ToArray(),</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;                typeof(T[]));</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; _signals.Length; i++)</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;            {</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;                _signals[i].SetOwner(Descriptor, null, <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_data_types_1_1_index_spec.html">IndexSpec</a>(i));</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;            }</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;            ChangedEvent = <span class="keyword">new</span> MultiEvent(<span class="keyword">this</span>, _signals.Select(s =&gt; s.ChangedEvent));</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        }</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        </div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        <span class="keyword">public</span> InOut&lt;T&gt; <span class="keyword">this</span>[<span class="keywordtype">int</span> index]</div>
<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#aabd0473511c325860b99536e6686d6a9">  224</a></span>&#160;        {</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SignalIndexer</a>]</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _signals[index]; }</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        }</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        <span class="keyword">public</span> <a class="code" href="interface_system_sharp_1_1_components_1_1_in_out_3_01_t_01_4.html">InOut&lt;T&gt;</a> <span class="keyword">this</span>[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_unsigned.html">Unsigned</a> index]</div>
<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a780e84365f6acb8743d5ec0795d0cde5">  233</a></span>&#160;        {</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SignalIndexer</a>]</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _signals[index.IntValue]; }</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        }</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <span class="keyword">internal</span> <span class="keywordtype">object</span> GetIndexerSample(<span class="keywordtype">int</span> index)</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        {</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;            <span class="keywordflow">return</span> _signals.Length &gt; 0 ? _signals[0] : null;</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        }</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        <span class="keyword">public</span> XInOut&lt;T[], InOut&lt;T&gt;&gt; <span class="keyword">this</span>[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index]</div>
<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#aade63026e998e1a6a8bc01daa4b47021">  247</a></span>&#160;        {</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SignalIndexer</a>]</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;            <span class="keyword">get</span></div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;            {</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;                <span class="keywordflow">if</span> (index.Direction != <a class="code" href="namespace_system_sharp_1_1_data_types.html#a186276b2957914dc1704f6e0bec8214a">EDimDirection</a>.To)</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;                    <span class="keywordflow">throw</span> <span class="keyword">new</span> NotImplementedException(<span class="stringliteral">&quot;Only up-range projections are supported&quot;</span>);</div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;                <span class="keywordflow">if</span> (Context.State == <a class="code" href="class_system_sharp_1_1_components_1_1_design_context.html">DesignContext</a>.<a class="code" href="class_system_sharp_1_1_components_1_1_design_context.html#a4f0e21b29a097e8c34cd39bc1565955c">ESimState</a>.Construction ||</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;                    Context.State == <a class="code" href="class_system_sharp_1_1_components_1_1_design_context.html">DesignContext</a>.<a class="code" href="class_system_sharp_1_1_components_1_1_design_context.html#a4f0e21b29a097e8c34cd39bc1565955c">ESimState</a>.Elaboration)</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;                {</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;                    <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html">Signal1D&lt;T&gt;</a>(_signals.Skip((int)index.FirstBound).Take((int)index.Size));</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;                }</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;                <span class="keywordflow">else</span></div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;                {</div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;                    <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html">Signal1DProxy&lt;T&gt;</a>(<span class="keyword">this</span>, index);</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;                }</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;            }</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        }</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        <span class="keyword">internal</span> <span class="keywordtype">object</span> GetIndexerSample(<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index)</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        {</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;            <span class="keywordtype">int</span> length = index.SecondBound - index.FirstBound + 1;</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;            <span class="keywordflow">if</span> (length &gt;= 0 &amp;&amp; length &lt;= _signals.Length)</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html">Signal1DProxy&lt;T&gt;</a>(<span class="keyword">this</span>,</div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;                    index.Direction == EDimDirection.Downto ?</div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;                        <span class="keyword">new</span> <a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a>(length - 1, 0, <a class="code" href="namespace_system_sharp_1_1_data_types.html#a186276b2957914dc1704f6e0bec8214a">EDimDirection</a>.Downto) :</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;                        new Range(0, length - 1, <a class="code" href="namespace_system_sharp_1_1_data_types.html#a186276b2957914dc1704f6e0bec8214a">EDimDirection</a>.<a class="code" href="namespace_system_sharp_1_1_data_types.html#a186276b2957914dc1704f6e0bec8214aae12167aa0a7698e6ebc92b4ce3909b53">To</a>));</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;            <span class="keywordflow">else</span></div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;                <span class="keywordflow">return</span> null;</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        }</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;        [AssumeNotCalled]</div>
<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a80575b7e88d095d6ed11452bbac0aaf4">  279</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">override</span> <a class="code" href="interface_system_sharp_1_1_components_1_1_i_signal.html">ISignal</a> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a80575b7e88d095d6ed11452bbac0aaf4">ApplyIndex</a>(<a class="code" href="class_system_sharp_1_1_data_types_1_1_index_spec.html">IndexSpec</a> idx)</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;        {</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;            <span class="keywordflow">if</span> (idx.<a class="code" href="class_system_sharp_1_1_data_types_1_1_index_spec.html#ad8bcff25c02b8ee9bad9de6a18ded154">Indices</a>.Length == 0)</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;            {</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">this</span>;</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;            }</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;            <span class="keywordflow">else</span> <span class="keywordflow">if</span> (idx.<a class="code" href="class_system_sharp_1_1_data_types_1_1_index_spec.html#ad8bcff25c02b8ee9bad9de6a18ded154">Indices</a>.Length == 1)</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;            {</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;                <a class="code" href="class_system_sharp_1_1_data_types_1_1_dim_spec.html">DimSpec</a> idx0 = idx.Indices[0];</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                <span class="keywordflow">switch</span> (idx0.<a class="code" href="class_system_sharp_1_1_data_types_1_1_dim_spec.html#abd8e34219997a5b65b66e74a8f4c8c25">Kind</a>)</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                {</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;                    <span class="keywordflow">case</span> DimSpec.EKind.Index:</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                        <span class="keywordflow">return</span> (<a class="code" href="interface_system_sharp_1_1_components_1_1_i_signal.html">ISignal</a>)<span class="keyword">this</span>[(int)idx0];</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                    <span class="keywordflow">case</span> DimSpec.EKind.Range:</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                        <span class="keywordflow">return</span> (<a class="code" href="interface_system_sharp_1_1_components_1_1_i_signal.html">ISignal</a>)<span class="keyword">this</span>[(<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a>)idx0];</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;                    <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;                        <span class="keywordflow">throw</span> <span class="keyword">new</span> NotImplementedException();</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;                }</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;            }</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;            <span class="keywordflow">else</span></div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;            {</div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;                <span class="keywordflow">throw</span> <span class="keyword">new</span> ArgumentException();</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;            }</div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        }</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;        <span class="keyword">public</span> T[] Cur</div>
<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#adc358be12ae4e769325bc3b5d927764a">  307</a></span>&#160;        {</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.Cur)]</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _signals.Select(s =&gt; s.Cur).ToArray(); }</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        }</div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;</div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        <span class="keyword">public</span> T[] Pre</div>
<div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#aecd60adaf12d3389eca3178b84c45cbb">  313</a></span>&#160;        {</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.Pre)]</div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _signals.Select(s =&gt; s.Pre).ToArray(); }</div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        }</div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div>
<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;        <span class="keyword">public</span> Out&lt;T[]&gt; Dual</div>
<div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#aabc7e2a0ef9471d0b87c90ea065a4cf9">  319</a></span>&#160;        {</div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;        }</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;        <span class="keyword">private</span> <span class="keywordtype">void</span> CheckValue(T[] value)</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;        {</div>
<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;            <span class="keywordflow">if</span> (value == null)</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;                <span class="keywordflow">throw</span> <span class="keyword">new</span> ArgumentException(<span class="stringliteral">&quot;value must not be null&quot;</span>);</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;            <span class="keywordflow">if</span> (value.LongLength != _signals.LongLength)</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;                <span class="keywordflow">throw</span> <span class="keyword">new</span> ArgumentException(<span class="stringliteral">&quot;value has invalid dimensions&quot;</span>);</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;        }</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;</div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        <span class="keyword">public</span> T[] Next</div>
<div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a1a334085115bf128c3a80efdd156cf38">  333</a></span>&#160;        {</div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_property.html">SignalProperty</a>(<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SignalRef</a>.<a class="code" href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">EReferencedProperty</a>.Next)]</div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;            set</div>
<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;            {</div>
<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;                CheckValue(value);</div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> i = 0; i &lt; _signals.LongLength; i++)</div>
<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;                    _signals[i].Next = value[i];</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;            }</div>
<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;        }</div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;</div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <span class="keyword">public</span> T[] InitialValue</div>
<div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#aadfcfecb728ef6eb2c5a0776acc93350">  344</a></span>&#160;        {</div>
<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;            <span class="keyword">get</span></div>
<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;            {</div>
<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;                <span class="keywordflow">return</span> _signals.Select(s =&gt; s.InitialValue).ToArray();</div>
<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;            }</div>
<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;            set</div>
<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;            {</div>
<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;                CheckValue(value);</div>
<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> i = 0; i &lt; _signals.LongLength; i++)</div>
<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;                    _signals[i].InitialValue = value[i];</div>
<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;            }</div>
<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;        }</div>
<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;        <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">object</span> InitialValueObject</div>
<div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#ae2f9e9a5902abadcdc284dab08d1d0bb">  358</a></span>&#160;        {</div>
<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> InitialValue; }</div>
<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;            set { InitialValue = (T[])value; }</div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;        }</div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        In&lt;T[]&gt; Out&lt;T[]&gt;.Dual</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        {</div>
<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        }</div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;</div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;        <a class="code" href="class_system_sharp_1_1_meta_1_1_type_descriptor.html">TypeDescriptor</a> _elementType;</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div>
<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a8b07ba2f2f8424479c16ffea2cc09bd4">  370</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">override</span> <a class="code" href="class_system_sharp_1_1_meta_1_1_type_descriptor.html">TypeDescriptor</a> ElementType { <span class="keyword">get</span> { <span class="keywordflow">return</span> _elementType; } }</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div>
<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;        <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">object</span> PreObject</div>
<div class="line"><a name="l00373"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a8d4001f9f8d79a72dbfd432cdc33aba6">  373</a></span>&#160;        {</div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> Pre; }</div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        }</div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;        <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">object</span> CurObject</div>
<div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#add5ade04a8920361b114ec63d4b173c2">  378</a></span>&#160;        {</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> Cur; }</div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;        }</div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;        <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">object</span> NextObject</div>
<div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a8f7bae992016b6c4e1512dcd92f6a18e">  383</a></span>&#160;        {</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;            set { Next = (T[])value; }</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;        }</div>
<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;</div>
<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="keywordtype">void</span> IContainmentImplementor.SetOwner(</div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;            <a class="code" href="class_system_sharp_1_1_meta_1_1_descriptor_base.html">DescriptorBase</a> owner, </div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;            System.Reflection.MemberInfo declSite,</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;            <a class="code" href="class_system_sharp_1_1_data_types_1_1_index_spec.html">IndexSpec</a> indexSpec)</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;        {</div>
<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;            base.SetOwner(owner, declSite, IndexSpec.Empty);</div>
<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;        }</div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;</div>
<div class="line"><a name="l00395"></a><span class="lineno"><a class="line" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#ad07fd0b461fe6a5111fcd0947cdda0cf">  395</a></span>&#160;        <span class="keyword">protected</span> <span class="keyword">override</span> <a class="code" href="class_system_sharp_1_1_meta_1_1_signal_descriptor.html">SignalDescriptor</a> <a class="code" href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#ad07fd0b461fe6a5111fcd0947cdda0cf">CreateSignalDescriptor</a>()</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;        {</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="class_system_sharp_1_1_meta_1_1_signal_descriptor.html">SignalDescriptor</a>(<span class="keyword">this</span>, ElementType);</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        }</div>
<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;</div>
<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;        XIn&lt;T[], InOut&lt;T&gt;&gt; IIndexed&lt;InOut&lt;T&gt;, XIn&lt;T[], InOut&lt;T&gt;&gt;&gt;.this[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index]</div>
<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;        {</div>
<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;            [<a class="code" href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SignalIndexer</a>]</div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>[index]; }</div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;        }</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;</div>
<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;        XOut&lt;T[], InOut&lt;T&gt;&gt; IIndexed&lt;InOut&lt;T&gt;, XOut&lt;T[], InOut&lt;T&gt;&gt;&gt;.this[<a class="code" href="struct_system_sharp_1_1_data_types_1_1_range.html">Range</a> index]</div>
<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        {</div>
<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;            [SignalIndexer]</div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>[index]; }</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;        }</div>
<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    }</div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<span class="preprocessor">#if false</span></div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor"></span>    <span class="keyword">public</span> <span class="keyword">class </span>Signal2D&lt;T&gt; :</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;        XInOut&lt;T[,], XInOut&lt;T[], InOut&lt;T&gt;&gt;&gt;</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    {</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;        <span class="keyword">public</span> delegate Signal&lt;T&gt; CreateFunc(<span class="keywordtype">long</span> i0, <span class="keywordtype">long</span> i1);</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;        <span class="keyword">private</span> Signal&lt;T&gt;[,] _signals;</div>
<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;        <span class="keyword">private</span> Signal1D&lt;T&gt;[] _rows;</div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;        <span class="keyword">private</span> MultiEvent _changedEvent;</div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        <span class="keyword">public</span> Signal2D(<span class="keywordtype">long</span> dim0, <span class="keywordtype">long</span> dim1, CreateFunc creator)</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;        {</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;            _signals = <span class="keyword">new</span> Signal&lt;T&gt;[dim0, dim1];</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;            _rows = <span class="keyword">new</span> Signal1D&lt;T&gt;[dim0];</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">long</span> i = 0; i &lt; dim0; i++)</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;            {</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> j = 0; j &lt; dim1; j++)</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;                {</div>
<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;                    _signals[i,j] = creator(i,j);</div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;                }</div>
<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;                _rows[i] = <span class="keyword">new</span> Signal1D&lt;T&gt;(dim1, j =&gt; _signals[i, j]);</div>
<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;            }</div>
<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;            _changedEvent = <span class="keyword">new</span> MultiEvent(_rows.Select(r =&gt; r.ChangedEvent));</div>
<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;        }</div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;</div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;        <span class="keyword">public</span> T[,] Cur</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;        {</div>
<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;            <span class="keyword">get</span> </div>
<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;            {</div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;                <span class="keywordtype">long</span> dim0 = _signals.GetLongLength(0);</div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;                <span class="keywordtype">long</span> dim1 = _signals.GetLongLength(1);</div>
<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;                T[,] result = <span class="keyword">new</span> T[dim0, dim1];</div>
<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> i = 0; i &lt; dim0; i++)</div>
<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;                {</div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;                    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> j = 0; j &lt; dim1; j++)</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;                    {</div>
<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;                        result[i, j] = _signals[i, j].Cur;</div>
<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;                    }</div>
<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;                }</div>
<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;                <span class="keywordflow">return</span> result;</div>
<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;            }</div>
<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;        }</div>
<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;        <span class="keyword">public</span> T[,] Pre</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;        {</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;            <span class="keyword">get</span></div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;            {</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;                <span class="keywordtype">long</span> dim0 = _signals.GetLongLength(0);</div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;                <span class="keywordtype">long</span> dim1 = _signals.GetLongLength(1);</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;                T[,] result = <span class="keyword">new</span> T[dim0, dim1];</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> i = 0; i &lt; dim0; i++)</div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;                {</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;                    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> j = 0; j &lt; dim1; j++)</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;                    {</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;                        result[i, j] = _signals[i, j].Pre;</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;                    }</div>
<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;                }</div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;                <span class="keywordflow">return</span> result;</div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;            }</div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;        }</div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;        <span class="keyword">public</span> Out&lt;T[,]&gt; Dual</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;        {</div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        }</div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;</div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;        <span class="keyword">public</span> AbstractEvent ChangedEvent</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;        {</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> _changedEvent; }</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        }</div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        <span class="keyword">public</span> XInOut&lt;T[], InOut&lt;T&gt;&gt; <span class="keyword">this</span>[<span class="keywordtype">long</span> i0]</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        {</div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;            <span class="keyword">get</span> </div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;            {</div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;                <span class="keywordflow">return</span> _rows[i0];</div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;            }</div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;        }</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;        <span class="keyword">public</span> T[,] Next</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        {</div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;            set </div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;            {</div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;                <span class="keywordtype">long</span> dim0 = _signals.GetLongLength(0);</div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;                <span class="keywordtype">long</span> dim1 = _signals.GetLongLength(1);</div>
<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> i = 0; i &lt; dim0; i++)</div>
<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;                {</div>
<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;                    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> j = 0; j &lt; dim1; j++)</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;                    {</div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;                        _signals[i, j].Next = value[i, j];</div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;                    }</div>
<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;                }</div>
<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;            }</div>
<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;        }</div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;</div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;        In&lt;T[,]&gt; Out&lt;T[,]&gt;.Dual</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        {</div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;            <span class="keyword">get</span> { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        }</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;    }</div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor"></span>}</div>
<div class="ttc" id="namespace_system_sharp_1_1_data_types_html_a186276b2957914dc1704f6e0bec8214aae12167aa0a7698e6ebc92b4ce3909b53"><div class="ttname"><a href="namespace_system_sharp_1_1_data_types.html#a186276b2957914dc1704f6e0bec8214aae12167aa0a7698e6ebc92b4ce3909b53">SystemSharp.DataTypes.To</a></div><div class="ttdoc">Increasing range </div></div>
<div class="ttc" id="interface_system_sharp_1_1_components_1_1_i_signal_html"><div class="ttname"><a href="interface_system_sharp_1_1_components_1_1_i_signal.html">SystemSharp.Components.ISignal</a></div><div class="ttdoc">Interface definition for signals </div><div class="ttdef"><b>Definition:</b> <a href="_signals_core_8cs_source.html#l00294">SignalsCore.cs:294</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref_html_ac2602b9335fc17657b0147b8b917c727"><div class="ttname"><a href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html#ac2602b9335fc17657b0147b8b917c727">SystemSharp.SysDOM.SignalRef.EReferencedProperty</a></div><div class="ttdeci">EReferencedProperty</div><div class="ttdoc">Selects, which property of the signal is referenced </div><div class="ttdef"><b>Definition:</b> <a href="_literals_8cs_source.html#l00504">Literals.cs:504</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4_html_a9d0fd7c78d5546800ca77a23ba1560ce"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#a9d0fd7c78d5546800ca77a23ba1560ce">SystemSharp.Components.Signal1DProxy&lt; T &gt;.Signal1DProxy</a></div><div class="ttdeci">Signal1DProxy(Signal1D&lt; T &gt; reference, Range range)</div><div class="ttdoc">Constructs an instance. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00056">SignalsND.cs:56</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_abstract_event_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_abstract_event.html">SystemSharp.Components.AbstractEvent</a></div><div class="ttdoc">Abstract base class for events </div><div class="ttdef"><b>Definition:</b> <a href="_event_8cs_source.html#l00035">Event.cs:35</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal_indexer_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal_indexer.html">SystemSharp.Components.SignalIndexer</a></div><div class="ttdoc">This attribute is attached to getter methods of indexer properties of array-typed signals...</div><div class="ttdef"><b>Definition:</b> <a href="_components_attributes_8cs_source.html#l00337">ComponentsAttributes.cs:337</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4_html_aab4bdd7c6bbd7f9512c8b87f038e7583"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html#aab4bdd7c6bbd7f9512c8b87f038e7583">SystemSharp.Components.Signal1DProxy&lt; T &gt;.ToSignalRef</a></div><div class="ttdeci">SignalRef ToSignalRef(SignalRef.EReferencedProperty prop)</div><div class="ttdoc">Represents this signal as a SysDOM signal reference. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00151">SignalsND.cs:151</a></div></div>
<div class="ttc" id="struct_system_sharp_1_1_data_types_1_1_unsigned_html"><div class="ttname"><a href="struct_system_sharp_1_1_data_types_1_1_unsigned.html">SystemSharp.DataTypes.Unsigned</a></div><div class="ttdoc">An unsigned integer </div><div class="ttdef"><b>Definition:</b> <a href="_unsigned_8cs_source.html#l00637">Unsigned.cs:637</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html">SystemSharp.Components.Signal1D&lt; T &gt;</a></div><div class="ttdoc">Models a signal which carries one-dimensional signal data. It provides indexing properties to apply a...</div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00164">SignalsND.cs:164</a></div></div>
<div class="ttc" id="namespace_system_sharp_1_1_data_types_html_a186276b2957914dc1704f6e0bec8214a"><div class="ttname"><a href="namespace_system_sharp_1_1_data_types.html#a186276b2957914dc1704f6e0bec8214a">SystemSharp.DataTypes.EDimDirection</a></div><div class="ttdeci">EDimDirection</div><div class="ttdoc">This enumeration is used to model the direction of a range. </div><div class="ttdef"><b>Definition:</b> <a href="_common_8cs_source.html#l00032">Common.cs:32</a></div></div>
<div class="ttc" id="struct_system_sharp_1_1_data_types_1_1_range_html"><div class="ttname"><a href="struct_system_sharp_1_1_data_types_1_1_range.html">SystemSharp.DataTypes.Range</a></div><div class="ttdoc">A discrete range. </div><div class="ttdef"><b>Definition:</b> <a href="_common_8cs_source.html#l00047">Common.cs:47</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4_html_a3c6c66ec950b58f0ed52fe51d4b29de5"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a3c6c66ec950b58f0ed52fe51d4b29de5">SystemSharp.Components.Signal1D&lt; T &gt;.Signal1D</a></div><div class="ttdeci">Signal1D(int dim, CreateFunc creator)</div><div class="ttdoc">Constructs an instance. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00193">SignalsND.cs:193</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4_html_a80575b7e88d095d6ed11452bbac0aaf4"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a80575b7e88d095d6ed11452bbac0aaf4">SystemSharp.Components.Signal1D&lt; T &gt;.ApplyIndex</a></div><div class="ttdeci">override ISignal ApplyIndex(IndexSpec idx)</div><div class="ttdoc">Creates a signal interface which represents this signal under application of an index or sub-range...</div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00279">SignalsND.cs:279</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_design_context_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_design_context.html">SystemSharp.Components.DesignContext</a></div><div class="ttdoc">This class encapsulates the simulation context. Each design has an associated simulation context...</div><div class="ttdef"><b>Definition:</b> <a href="_design_context_8cs_source.html#l00047">DesignContext.cs:47</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_data_types_1_1_dim_spec_html_abd8e34219997a5b65b66e74a8f4c8c25"><div class="ttname"><a href="class_system_sharp_1_1_data_types_1_1_dim_spec.html#abd8e34219997a5b65b66e74a8f4c8c25">SystemSharp.DataTypes.DimSpec.Kind</a></div><div class="ttdeci">EKind Kind</div><div class="ttdoc">Kind of this specifier, index or range </div><div class="ttdef"><b>Definition:</b> <a href="_common_8cs_source.html#l00357">Common.cs:357</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_data_types_1_1_dim_spec_html"><div class="ttname"><a href="class_system_sharp_1_1_data_types_1_1_dim_spec.html">SystemSharp.DataTypes.DimSpec</a></div><div class="ttdoc">A dimensional specifier is either a single index or a range. </div><div class="ttdef"><b>Definition:</b> <a href="_common_8cs_source.html#l00343">Common.cs:343</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal_property_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal_property.html">SystemSharp.Components.SignalProperty</a></div><div class="ttdoc">If this attribute is attached to a method, it indicates that the method represents a special signal p...</div><div class="ttdef"><b>Definition:</b> <a href="_components_attributes_8cs_source.html#l00204">ComponentsAttributes.cs:204</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_multi_event_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_multi_event.html">SystemSharp.Components.MultiEvent</a></div><div class="ttdoc">Represents a combined event which is triggered whenever one of multiple events is triggered...</div><div class="ttdef"><b>Definition:</b> <a href="_event_8cs_source.html#l00200">Event.cs:200</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4_html_ad07fd0b461fe6a5111fcd0947cdda0cf"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#ad07fd0b461fe6a5111fcd0947cdda0cf">SystemSharp.Components.Signal1D&lt; T &gt;.CreateSignalDescriptor</a></div><div class="ttdeci">override SignalDescriptor CreateSignalDescriptor()</div><div class="ttdoc">Creates a SysDOM signal descriptor for this signal instance. You must override this method in your co...</div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00395">SignalsND.cs:395</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4_html_a299f33f37144b2f67604ede3dae9324f"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_3_01_t_01_4.html#a299f33f37144b2f67604ede3dae9324f">SystemSharp.Components.Signal1D&lt; T &gt;.Signal1D</a></div><div class="ttdeci">Signal1D(IEnumerable&lt; Signal&lt; T &gt;&gt; signals)</div><div class="ttdoc">Constructs an instance based on a sequence of underlying carrier signals, i.e. one signal for each da...</div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00182">SignalsND.cs:182</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_meta_1_1_signal_descriptor_html"><div class="ttname"><a href="class_system_sharp_1_1_meta_1_1_signal_descriptor.html">SystemSharp.Meta.SignalDescriptor</a></div><div class="ttdoc">Describes a signal. </div><div class="ttdef"><b>Definition:</b> <a href="_components_reflection_8cs_source.html#l01180">ComponentsReflection.cs:1180</a></div></div>
<div class="ttc" id="interface_system_sharp_1_1_components_1_1_in_out_3_01_t_01_4_html"><div class="ttname"><a href="interface_system_sharp_1_1_components_1_1_in_out_3_01_t_01_4.html">SystemSharp.Components.InOut&lt; T &gt;</a></div><div class="ttdoc">This interface models a bi-directional signal port of a specific data type. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_core_8cs_source.html#l00109">SignalsCore.cs:109</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_meta_1_1_type_descriptor_html"><div class="ttname"><a href="class_system_sharp_1_1_meta_1_1_type_descriptor.html">SystemSharp.Meta.TypeDescriptor</a></div><div class="ttdoc">Describes a type. </div><div class="ttdef"><b>Definition:</b> <a href="_type_descriptor_8cs_source.html#l00120">TypeDescriptor.cs:120</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal_base_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal_base.html">SystemSharp.Components.SignalBase</a></div><div class="ttdoc">This is the abstract base class of a signal. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_core_8cs_source.html#l00338">SignalsCore.cs:338</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_data_types_1_1_index_spec_html"><div class="ttname"><a href="class_system_sharp_1_1_data_types_1_1_index_spec.html">SystemSharp.DataTypes.IndexSpec</a></div><div class="ttdoc">An index specifier is an aggregation of dimensional specifiers. </div><div class="ttdef"><b>Definition:</b> <a href="_common_8cs_source.html#l00475">Common.cs:475</a></div></div>
<div class="ttc" id="interface_system_sharp_1_1_meta_1_1_i_containment_implementor_html"><div class="ttname"><a href="interface_system_sharp_1_1_meta_1_1_i_containment_implementor.html">SystemSharp.Meta.IContainmentImplementor</a></div><div class="ttdoc">This interface describes model elements which are owned by some superordinate descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="_components_reflection_8cs_source.html#l00173">ComponentsReflection.cs:173</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal_3_01_t_01_4_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal_3_01_t_01_4.html">SystemSharp.Components.Signal&lt; T &gt;</a></div><div class="ttdoc">Basic signal implementation. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_core_8cs_source.html#l00474">SignalsCore.cs:474</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4_html"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_signal1_d_proxy_3_01_t_01_4.html">SystemSharp.Components.Signal1DProxy&lt; T &gt;</a></div><div class="ttdoc">The proxy represents the application of a sub-range to an underlying Signal1D. I.e. the proxy does not manage the signal data by itself but instead acts as an adapter between the actual signal and the view on that signal which results from applying the sub-range. </div><div class="ttdef"><b>Definition:</b> <a href="_signals_n_d_8cs_source.html#l00037">SignalsND.cs:37</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_data_types_1_1_index_spec_html_ad8bcff25c02b8ee9bad9de6a18ded154"><div class="ttname"><a href="class_system_sharp_1_1_data_types_1_1_index_spec.html#ad8bcff25c02b8ee9bad9de6a18ded154">SystemSharp.DataTypes.IndexSpec.Indices</a></div><div class="ttdeci">DimSpec[] Indices</div><div class="ttdoc">The dimensional specifiers </div><div class="ttdef"><b>Definition:</b> <a href="_common_8cs_source.html#l00485">Common.cs:485</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref_html"><div class="ttname"><a href="class_system_sharp_1_1_sys_d_o_m_1_1_signal_ref.html">SystemSharp.SysDOM.SignalRef</a></div><div class="ttdoc">Signal reference literal </div><div class="ttdef"><b>Definition:</b> <a href="_literals_8cs_source.html#l00498">Literals.cs:498</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_components_1_1_design_context_html_a4f0e21b29a097e8c34cd39bc1565955c"><div class="ttname"><a href="class_system_sharp_1_1_components_1_1_design_context.html#a4f0e21b29a097e8c34cd39bc1565955c">SystemSharp.Components.DesignContext.ESimState</a></div><div class="ttdeci">ESimState</div><div class="ttdoc">This enumeration defines the possible model/simulation states </div><div class="ttdef"><b>Definition:</b> <a href="_design_context_8cs_source.html#l00052">DesignContext.cs:52</a></div></div>
<div class="ttc" id="class_system_sharp_1_1_meta_1_1_descriptor_base_html"><div class="ttname"><a href="class_system_sharp_1_1_meta_1_1_descriptor_base.html">SystemSharp.Meta.DescriptorBase</a></div><div class="ttdoc">Base implementation of any descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="_components_reflection_8cs_source.html#l00362">ComponentsReflection.cs:362</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_bb5e995590685548b7e11478911ee7c3.html">SystemSharp-Google-SVN</a></li><li class="navelem"><a class="el" href="dir_8deefa4467a62b572b52d238d562b104.html">SystemSharp</a></li><li class="navelem"><a class="el" href="dir_0e5a72156f8560bbc472a395da2569d6.html">SystemSharp</a></li><li class="navelem"><a class="el" href="dir_9d3c30b4336bd92c64ccf0aeee487ace.html">SystemSharp</a></li><li class="navelem"><a class="el" href="dir_2796d14d34df7db36a6563efa1efe523.html">Components</a></li><li class="navelem"><a class="el" href="_signals_n_d_8cs.html">SignalsND.cs</a></li>
    <li class="footer">Generated on Thu Dec 26 2013 14:21:42 for SystemSharp by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
  </ul>
</div>
</body>
</html>
